package cn.tedu.method;
/*
方法重载
 */
public class MethodDemo4 {
    public static void main(String[] args) {
//        sum(1,2);//两个int类型求和的方法
        sum(1,2,3);//三个int类型求和的方法
        sum(1.2,2.3);//两个double类型求和的方法

        //
//        int res = sum(10);
//        System.out.println(res);
        //方法递归
        System.out.println(jc(3));
    }
    //求阶乘
    public static int jc(int n){
        if(n==1){
            return 1;
        }
        return jc(n-1)*n;//2*3
    }
    //方法递归来实现求1-n的和
    public static int sum(int n){//1 sum(1)
       return sum(n-1)+n;//sum(10)=sum(9)+10
    }
    //求1-n的和
//    public static int sum(int n){
//        int sum = 0;
//        for (int i = 1; i <=n ; i++) {
//            sum+=i;
//        }
//        return sum;
//    }
    //定义两个int类型求和的方法
    /*public static int sum(int a,int b){
        System.out.println("两个int类型求和的方法");
        return a+b;
    }*/
    //重载方法一 定义三个int类型求和的方法
    public static int sum(int a,int b,int c){
        System.out.println("三个int类型求和的方法");
        return a+b+c;
    }
    public static double sum(int a,double b){
        System.out.println("int，double类型求和的方法");
        return a+b;
    }
    public static double sum(double a,int b){
        System.out.println("int，double类型求和的方法");
        return a+b;
    }
    //定义两个double类型求和的方法
    public static double sum(double a,double b){
        System.out.println("两个double类型求和的方法");
        return a+b;
    }
}
